package git.soulbgm.pojo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.util.Date;

/**
 * 告警信息表
 *
 * @author SoulBGM
 * @date 2020-11-18 10:03:05
 */
public class AlarmInfo {

    /**
     * ID
     */
    private Long id;

    /**
     * 告警规则ID
     */
    @Excel(name = "告警规则ID")
    private Long ruleId;

    /**
     * 告警等级 1 一般告警 2 重要告警 3 严重告警
     */
    @Excel(name = "告警等级", replace = {"一般告警_1", "重要告警_2", "严重告警_3"})
    private Integer level;

    /**
     * 告警内容
     */
    @Excel(name = "告警内容")
    private String alarmContent;

    /**
     * 告警对象
     */
    @Excel(name = "告警对象")
    private String alarmObject;

    /**
     * 规则类型 1 设备(monitor-agent) 2 服务 3 第三方软件 4 业务
     */
    @Excel(name = "规则类型", dict = "alarm_rule_list")
    private String ruleType;

    /**
     * 节点/主机编号
     */
    @Excel(name = "主机编号")
    private Integer nodeCode;

    /**
     * IP地址
     */
    @Excel(name = "IP地址")
    private String ip;

    /**
     * 创建时间
     */
    @Excel(name = "创建时间", format = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 是否已读
     */
    @Excel(name = "是否已读", replace = {"未读_0", "已读_1"})
    private Integer readHandle;

    /**
     * 已读时间
     */
    @Excel(name = "已读时间戳", replace = {"未处理_0"})
    private Long readHandleTime;

    /**
     * 机器是否处理 0 未处理 1 处理
     */
    @Excel(name = "机器是否处理", replace = {"未处理_0", "处理_1"})
    private Integer machineHandle;

    /**
     * 机器处理时间戳 为 0则代表还未处理
     */
    @Excel(name = "机器处理时间戳", replace = {"未处理_0"})
    private Long machineHandleTime;

    /**
     * 人工是否处理 0 未处理 1 处理
     */
    @Excel(name = "人工是否处理", replace = {"未处理_0", "处理_1"})
    private Integer artificialHandle;

    /**
     * 人工处理时间戳 为 0则代表还未处理
     */
    @Excel(name = "人工处理时间戳", replace = {"未处理_0"})
    private Long artificialHandleTime;

    /**
     * 人工处理时的留言 标注此告警是如何解决的
     */
    @Excel(name = "处理留言")
    private String artificialMessage;

    /**
     * 删除标识 0 未删除 1 删除
     */
    private Integer deleteFlag;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getRuleId() {
        return ruleId;
    }

    public void setRuleId(Long ruleId) {
        this.ruleId = ruleId;
    }

    public Integer getLevel() {
        return level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public String getAlarmContent() {
        return alarmContent;
    }

    public void setAlarmContent(String alarmContent) {
        this.alarmContent = alarmContent;
    }

    public String getAlarmObject() {
        return alarmObject;
    }

    public void setAlarmObject(String alarmObject) {
        this.alarmObject = alarmObject;
    }

    public String getRuleType() {
        return ruleType;
    }

    public void setRuleType(String ruleType) {
        this.ruleType = ruleType;
    }

    public Integer getNodeCode() {
        return nodeCode;
    }

    public void setNodeCode(Integer nodeCode) {
        this.nodeCode = nodeCode;
    }

    public String getIp() {
        return ip;
    }

    public void setIp(String ip) {
        this.ip = ip;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Integer getReadHandle() {
        return readHandle;
    }

    public void setReadHandle(Integer readHandle) {
        this.readHandle = readHandle;
    }

    public Long getReadHandleTime() {
        return readHandleTime;
    }

    public void setReadHandleTime(Long readHandleTime) {
        this.readHandleTime = readHandleTime;
    }

    public Integer getMachineHandle() {
        return machineHandle;
    }

    public void setMachineHandle(Integer machineHandle) {
        this.machineHandle = machineHandle;
    }

    public Long getMachineHandleTime() {
        return machineHandleTime;
    }

    public void setMachineHandleTime(Long machineHandleTime) {
        this.machineHandleTime = machineHandleTime;
    }

    public Integer getArtificialHandle() {
        return artificialHandle;
    }

    public void setArtificialHandle(Integer artificialHandle) {
        this.artificialHandle = artificialHandle;
    }

    public Long getArtificialHandleTime() {
        return artificialHandleTime;
    }

    public void setArtificialHandleTime(Long artificialHandleTime) {
        this.artificialHandleTime = artificialHandleTime;
    }

    public String getArtificialMessage() {
        return artificialMessage;
    }

    public void setArtificialMessage(String artificialMessage) {
        this.artificialMessage = artificialMessage;
    }

    public Integer getDeleteFlag() {
        return deleteFlag;
    }

    public void setDeleteFlag(Integer deleteFlag) {
        this.deleteFlag = deleteFlag;
    }
}